import java.util.Scanner;

/*给你一个字符串 s ，根据下述规则反转字符串：

        所有非英文字母保留在原有位置。
        所有英文字母（小写或大写）位置反转。
        返回反转后的 s 。*/
public class Main2 {
    public static String reverseOnlyLetters(String s) {
        char[] arr=s.toCharArray();
        int left = 0;
        int right = arr.length-1;
        while(left < right) {
            if(arr[left] < 'A'||(arr[left] >'Z'&& arr[left] < 'a')) {
                left++;
            }
            if(arr[right] < 'A'||(arr[right] >'Z'&& arr[right] < 'a')) {
                right--;
            }
            if(((arr[left] >= 'A'&& arr[left] <= 'Z') || (arr[left] >= 'a'&& arr[left] <= 'z')) && ((arr[right] >= 'A'&& arr[right] <= 'Z')|| (arr[right] >= 'a'&& arr[right] <= 'z'))
            ) {
                char tmp = arr[left];
                arr[left] = arr[right];
                arr[right] = tmp;
                left++;
                right--;
            }
        }

        return  new String(arr);
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        String tmp = reverseOnlyLetters(s);
        System.out.println(tmp);
    }
}
